import request from '@/config/axios'

// 记事本 VO
export interface OaPersonalNoteVO {
  id: string // 主键ID
  userId: string // 用户ID
  title: string // 记事标题
  content: string // 记事内容
  noteType: number // 类型
  startTime: Date // 开始时间
  endTime: Date // 结束时间
  reminderTime: Date // 提醒时间
  reminderType: number // 提醒方式
  isReminded: boolean // 是否已提醒
  isPinned: boolean // 是否置顶
  isCompleted: boolean // 是否完成
  completeTime: Date // 完成时间
  tags: string // 标签
  category: string // 分类
  attachment: string // 附件URL
  status: number // 审批结果
}

// 记事本 API
export const OaPersonalNoteApi = {
  // 查询记事本分页
  getOaPersonalNotePage: async (params: any) => {
    return await request.get({ url: `/bpm/oa-personal-note/page`, params })
  },

  // 查询记事本详情
  getOaPersonalNote: async (id: number) => {
    return await request.get({ url: `/bpm/oa-personal-note/get?id=` + id })
  },

  // 新增记事本
  createOaPersonalNote: async (data: OaPersonalNoteVO) => {
    return await request.post({ url: `/bpm/oa-personal-note/create`, data })
  },

  // 修改记事本
  updateOaPersonalNote: async (data: OaPersonalNoteVO) => {
    return await request.put({ url: `/bpm/oa-personal-note/update`, data })
  },

  // 删除记事本
  deleteOaPersonalNote: async (id: number) => {
    return await request.delete({ url: `/bpm/oa-personal-note/delete?id=` + id })
  },

  // 导出记事本 Excel
  exportOaPersonalNote: async (params) => {
    return await request.download({ url: `/bpm/oa-personal-note/export-excel`, params })
  },
}
